1. Technical Field of the Invention
The present invention generally relates to telecommunications. More particularly, and not by way of any limitation, the present invention is directed to a calendar heap system and method for efficiently sorting timestamps used in an Asynchronous Transfer Mode (ATM) scheduling environment.
2. Description of Related Art
The remote access market is undergoing a major metamorphosis. Three factors serve as catalysts for change. The first is the growing number of users, for example, small office/home office (SOHO) users, demanding high performance Internet and remote access for multimedia. Liberalized governmental activity with respect to telecommunications is another factor, which is fostering broader competition through deregulation in local area markets everywhere. The third and final factor is congestion in the Public Switched Telephone Network (PSTN), originally designed and developed for voice-only traffic.
There have been several important advances in telecommunications technology that enable high rates of throughput in carrier networks' backbone connections. For example, by implementing Asynchronous Transfer Mode (ATM) networking technology over a Synchronous Optical Network (SONET)/Synchronous Digital Hierarchy (SDH) physical layer, carrier networks can achieve data rates of up to several hundred megabits per second (Mbps). However, efforts to meet the bandwidth demand for remote access have been beset by the limitations of the existing twisted-pair copper cable infrastructure (i.e., access network) provided between a carrier's central office (CO) and a subscriber's remote site, typically referred to as the local loop. In the telecommunications art, these limitations are sometimes collectively described as the “last-mile” problem.
Current access network solutions that attempt to avoid the bottleneck created by the last-mile problem involve the use of fiber optic technology in the local loop also. As with the high-speed carrier networks, the fiber-based local loop infrastructure is typically architected using SONET as the physical layer technology. With recent developments in optical components and related opto-electronics, in addition to improvements in network design, broadband access is now becoming commonplace.
Moreover, coupled with the phenomenal growth in popularity of the Internet, there has been a tremendous interest in using packet-switched network (PSN) infrastructures (e.g., those based on Internet Protocol (IP) addressing) as a replacement for the existing circuit-switched network (CSN) infrastructures used in today's telecommunications networks. From the network operators' perspective, the inherent traffic aggregation in packet-switched infrastructures allows for a reduction in the cost of transmission and the infrastructure cost per end-user. Ultimately, such cost reductions enable the network operators to pass on the concomitant cost savings to the end-users.
Accordingly, a new breed of service-centric networks (distinct from the existing voice-centric and data-centric networks) are being explored for implementation on what is known as the next-generation network (NGN) infrastructure, where integrated voice/data/video applications may be provisioned using a packet transport mechanism over a PSN in an end-to-end transmission path. As alluded to hereinabove, it is believed that using a packet network infrastructure in access networks provides higher transmission efficiency, lower operation and maintenance costs, and a unified access.
Traditional access systems allow accessing a digital local voice switch, such as a Class 5 switch, by extending a plurality of metallic loops and aggregating them in a bundle for efficiently transmitting the time-division multiplexed (TDM) voice traffic. Typically, such access networks are architected using one or more access nodes in a variety of configurations, e.g., point-to-point chains, rings, etc., wherein an access node may itself comprise several channel banks that provide line interfaces servicing a large number of subscribers.
In order to afford increased levels of functionality and service provisioning, however, access networks of today are being required to support advanced transport mechanisms such as SONET for the internal architecture of the nodes as well. In such nodes, ATM is used for carrying most of the subscriber traffic, except the traditional TDM services such as T1 and TDM-DS3 services. Accordingly, both TDM as well as ATM switching fabrics need to be supported in the access node design.
The ATM Forum provides a set of specifications governing the various aspects of an ATM switching fabric, including the fabric's scheduler whose function is to regulate the injection of incoming cells into the fabric. More particularly, the ATMF-TM-121 Standard provides the general description of scheduler requirements, including traffic policing/shaping functionality that is necessary to support different Classes of Service (CoS) such as Constant Bit Rate (CBR), Variable Bit Rate (VBR), Guaranteed Frame Rate (GFR), and the like. This Standard does not set forth, however, the implementational aspects in specific detail, especially in the context of an access node's internal architecture operable with SONET transport.
In general, ATM scheduler implementations involve the use of timestamp (TS) data in conjunction with traffic flows in an ATM switch where the incoming packets or cells are given TS tags in some predetermined manner. Often, it is necessary to perform various operations with respect to the TS data stored in a suitable data structure as part of the scheduler implementation. Such operations may comprise insertion, deletion, sorting, searching, sequencing, and the like. Where a large number of TS tags are required, it becomes imperative that the data structure methodology used for effectuating these operations be efficient as well as fast enough. This concern is particularly significant in applications having a sizeable bit field for TS values. For instance, if a 22-bit TS is used, approximately 222=4 million TS data values are possible. Additionally, in an architecture where traffic flows are scheduled based on a hierarchical scheduler arrangement, e.g., involving multiple data aggregation layers and several CoS levels, the total number of TS values becomes astronomical.
Heaps and calendar queues are some of the known data structures used for sorting large datasets. Although such data structures are generally adequate, they tend to be less efficient in terms of memory (e.g., queues) or slow due to algorithmic complexity (e.g., heaps). As a result, straight-forward implementation of the existing solutions in a high-speed ATM switch fabric design (>1 Gbps, for example) yields sub-optimal performance.